package com.ruoyi.outcome.service.impl;

import java.util.Collections;
import java.util.List;

import com.ruoyi.outcome.domain.vo.ResearchPaperTrack;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.outcome.mapper.ResearchPaperMapper;
import com.ruoyi.outcome.domain.ResearchPaper;
import com.ruoyi.outcome.service.IResearchPaperService;

/**
 * 论文管理Service业务层处理
 * 
 * @author zxh
 * @date 2025-01-06
 */
@Service
public class ResearchPaperServiceImpl implements IResearchPaperService 
{
    @Autowired
    private ResearchPaperMapper researchPaperMapper;

    /**
     * 查询论文管理
     * 
     * @param paperId 论文管理主键
     * @return 论文管理
     */
    @Override
    public ResearchPaper selectResearchPaperByPaperId(Long paperId)
    {
        return researchPaperMapper.selectResearchPaperByPaperId(paperId);
    }

    /**
     * 查询论文管理列表
     * 
     * @param researchPaper 论文管理
     * @return 论文管理
     */
    @Override
    public List<ResearchPaper> selectResearchPaperList(ResearchPaper researchPaper)
    {
        return researchPaperMapper.selectResearchPaperList(researchPaper);
    }

    /**
     * 新增论文管理
     * 
     * @param researchPaper 论文管理
     * @return 结果
     */
    @Override
    public int insertResearchPaper(ResearchPaper researchPaper)
    {
        return researchPaperMapper.insertResearchPaper(researchPaper);
    }

    /**
     * 修改论文管理
     * 
     * @param researchPaper 论文管理
     * @return 结果
     */
    @Override
    public int updateResearchPaper(ResearchPaper researchPaper)
    {
        return researchPaperMapper.updateResearchPaper(researchPaper);
    }

    /**
     * 批量删除论文管理
     * 
     * @param paperIds 需要删除的论文管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchPaperByPaperIds(Long[] paperIds)
    {
        return researchPaperMapper.deleteResearchPaperByPaperIds(paperIds);
    }

    /**
     * 删除论文管理信息
     * 
     * @param paperId 论文管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchPaperByPaperId(Long paperId)
    {
        return researchPaperMapper.deleteResearchPaperByPaperId(paperId);
    }

    @Override
    public int insertResearchPaperTrack(ResearchPaperTrack researchPaperTrack) {
        return researchPaperMapper.insertResearchPaperTrack(researchPaperTrack);
    }

    @Override
    public List<ResearchPaperTrack> selectResearchPaperTrackList(Long paperId) {
        return researchPaperMapper.selectResearchPaperTrackList(paperId);
    }
}
